
<div class="layui-card layadmin-header">
  <div class="layui-breadcrumb" lay-filter="breadcrumb">
    <a lay-href="">主页</a>
    <a><cite>交易管理</cite></a>
  </div>
</div>

<div class="layui-fluid">
  <div class="layui-card">
    <div class="layui-tab layui-tab-brief">
      <ul class="layui-tab-title">
        <li class="layui-this">交易记录</li>
      </ul>
      <div class="layui-tab-content">
        <div class="layui-tab-item layui-show">
          <div class="layui-row">
            <div class="layui-form" style="float:right; margin-bottom: 10px;">
              <div class="layui-form-item" style="margin:0;">
                <label class="layui-form-label">交易单号</label>
                <div class="layui-input-inline">
                  <input type="text" name="tradeOrderId" id="tradeOrderId" autocomplete="off" class="layui-input">
                </div>
                <label class="layui-form-label">支付单号</label>
                <div class="layui-input-inline">
                  <input type="text" name="payOrderId" id="payOrderId" autocomplete="off" class="layui-input">
                </div>
                <label class="layui-form-label">状态</label>
                <div class="layui-input-inline">
                  <select name="state" id="state" lay-search="">
                    <option value="-99">所有状态</option>
                    <option value="0">订单生成</option>
                    <option value="1">支付成功</option>
                    <option value="2">处理完成</option>
                    <option value="-1">处理失败</option>
                  </select>
                </div>
                <button id="search" class="layui-btn" data-type="reload">
                  <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                </button>
              </div>
            </div>
          </div>
          <table id="Pay_Mgr_Notify_dataAll" lay-filter="Pay_Mgr_Notify_dataAll"></table>
        </div>

      </div>
    </div>
  </div>
</div>

<script type="text/html" id="payBar">
  <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看</a>
</script>

<script>
layui.use(['admin', 'table', 'util'], function(){
  var $ = layui.$
  ,admin = layui.admin
  ,table = layui.table
  ,element = layui.element
      ,view =layui.view
  ,form = layui.form;

  element.render('breadcrumb', 'breadcrumb');

  var tplState = function(d){
    if(d.state == 0) {
      return "<span style='color: blue'>订单生成</span>";
    }else if(d.state == 1) {
      return "<span style='color: orangered'>支付成功</span>";
    }else if(d.state == 2) {
      return "<span style='color: green'>处理完成</span>";
    }else if(d.state == -1) {
      return "<span style='color: darkgreen'>处理失败</span>";
    }
  };

  //列表
  table.render({
    elem: '#Pay_Mgr_Notify_dataAll'
    ,url: layui.setter.baseUrl + '/trade_order/list' //列表接口
    ,where: {
        access_token: layui.data(layui.setter.tableName).access_token
    }
    ,id: 'tableReload'
    ,page: true
    ,cols: [[
      {type: 'checkbox', fixed: 'left'}
      ,{field: 'tradeOrderId', title: '交易单号'}
      ,{field: 'mchId', title: '商户ID'}
      ,{field: 'appId', title: '应用ID'}
      ,{field: 'goodsId', title: '商品ID'}
      ,{field: 'goodsName', title: '商品名称'}
      ,{field: 'amount', title: '交易金额', templet: '<div>{{ d.amount/100 }}</div>'}
      ,{field: 'state', title: '状态', templet: tplState}
      ,{field: 'createTime', title: '创建时间', templet: '<div>{{ layui.util.toDateString(d.createTime, "yyyy-MM-dd HH:mm:ss") }}</div>'}
      ,{field: 'edit', title: '操作', toolbar: '#payBar' }
    ]]
    ,skin: 'line'
  });

  //监听工具条
  table.on('tool(Pay_Mgr_Notify_dataAll)', function(obj){
    var data = obj.data;
    if(obj.event === 'detail'){

        var tradeOrderId =data.tradeOrderId;

        admin.req({
            type: 'get',
            url: layui.setter.baseUrl + '/trade_order/get',
            data: {
                tradeOrderId : tradeOrderId
            },
            error: function(err){
                layer.alert(JSON.stringify(err.field), {
                    title: '错误提示'
                })
            },

            success: function(res){
                if(res.code == 0){
                    data=res.data;

                    admin.popup({
                        title: '交易详情'
                        , area: ['740px', '530px']
                        , id: 'LAY-popup-content-view'
                        , success: function (layero, index) {
                            view(this.id).render('order/trade/view').done(function () {
                                form.render(null, 'layuiadmin-app-form-list');
                                var body =layer.getChildFrame('body',index);
                                body.find('#tradeOrderId').val(res.data.tradeOrderId);
                                form.val("layuiadmin-app-form-list",{

                                    "tradeOrderId":res.data.tradeOrderId,
                                    "userId":res.data.userId,
                                    "payOrderId":data.payOrderId,
                                    "state":data.state==0?"订单生成":data.state==1?"支付成功":data.state==2?"处理完成":data.state==-1?"处理失败":"发生错误"

                                })

                                $('#mchId').val(data.mchId);
                                $('#appId').val(data.appId);
                                $('#goodsId').val(res.data.goodsId);
                                $('#goodsName').val(res.data.goodsName);
                                $('#amount').val(res.data.amount);
                                $('#payOrderId').val(res.data.payOrderId);
                                $('#channelId').val(res.data.channelId);
                                $('#channelUserId').val(res.data.channelUserId);
                                if(res.data.paySuccTime != "" && res.data.paySuccTime != null) {
                                    $('#paySuccTime').val(layui.util.toDateString(res.data.paySuccTime));
                                }
                                if(res.data.completeTime != "" && res.data.completeTime != null) {
                                    $('#completeTime').val(layui.util.toDateString(res.data.completeTime));
                                }
                                if(res.data.createTime != "" && res.data.createTime != null) {
                                    $('#createTime').val(layui.util.toDateString(res.data.createTime));
                                }
                                if(res.data.updateTime != "" && res.data.updateTime != null) {
                                    $('#updateTime').val(layui.util.toDateString(res.data.updateTime));
                                }
                                form.render();

                            });
                        }
                    });

                }
            }
        })

    }
  });

  // 搜索
  var $ = layui.$, active = {
    reload: function(){
      var orderId = $('#orderId').val();
      var orderType = $("#orderType").val();
      var state = $("#state").val();
      //执行重载
      table.reload('tableReload', {
        page: {
          curr: 1 //重新从第 1 页开始
        }
        ,where: {
          orderId: orderId,
          orderType: orderType,
          state : state
        }
      });
    }
  };
  $('#search').on('click', function() {
    var type = $(this).data('type');
    active[type] ? active[type].call(this) : '';
  });
  // 渲染表单
  form.render();
});
</script>
